package com.bkitmobile.kesu.appengine.web.client;

import com.bkitmobile.kesu.appengine.web.client.entity.ListOfPlace;
import com.bkitmobile.kesu.appengine.web.client.entity.LoginInfo;
import com.bkitmobile.kesu.appengine.web.client.entity.PlaceClient;
import com.bkitmobile.kesu.appengine.web.client.entity.UserInfo;
import com.google.gwt.user.client.rpc.AsyncCallback;

/**
 * The async counterpart of <code>GreetingService</code>.
 */
public interface GreetingServiceAsync {
	void doLogin(LoginInfo input, AsyncCallback<String> callback)
			throws IllegalArgumentException;
	void checkLogin(String input, AsyncCallback<String> callback)
			throws IllegalArgumentException;
	void doLogout(String input, AsyncCallback<String> callback)
			throws IllegalArgumentException;
	void doRegister(UserInfo input, AsyncCallback<String> callback)
			throws IllegalArgumentException;
	void getPlace (String usrName, AsyncCallback<ListOfPlace> callback)
			throws IllegalArgumentException;
	void addPlace (PlaceClient place, AsyncCallback<String> callback)
			throws IllegalArgumentException;
	void getUsrInfo (String usrName, AsyncCallback<UserInfo> callback)
			throws IllegalArgumentException;
	void doUpdate (UserInfo usrName, AsyncCallback<String> callback)
			throws IllegalArgumentException;
}
